/*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */
package com.test.dao;

import java.io.Serializable;
import java.util.List;

/**
 *
 * @author think
 */
public interface IBaseDao<T> {

	public <PK extends Serializable> T load(Class<T> model, PK id);

	public <PK extends Serializable> T get(Class<T> model, PK id);

	public List<T> getAll(Class<T> model, List<String[]> orderInfos);

	public List<T> getAll(Class<T> model, String orderName, String sortType);

	public List<T> getAll(Class<T> model);

	public Serializable save(T model);

	public void saveOrUpdate(T model);

	public void update(T model);

	public void delete(T model);
}
